<?php
namespace Admin\Model;
use Think\Model;
class CardModel extends Model 
{
	protected $insertFields = array('code','name','price','low_price','effective_day','effective_frequency','effective_money','discount','integral','intro_integral','card_type','comment','status','member_id','is_show','sort','alias','company_id');
	protected $updateFields = array('id','code','name','price','low_price','effective_day','effective_frequency','effective_money','discount','integral','intro_integral','card_type','comment','status','member_id','is_show','sort','alias');
	protected $_validate = array(
		array('code', 'number', '编码必须是一个整数！', 2, 'regex', 3),
		array('price', 'number', '价格必须是一个整数！', 2, 'regex', 3),
		array('low_price', 'number', '最低价格必须是一个整数！', 2, 'regex', 3),
		array('effective_day', 'number', '有效期必须是一个整数！', 2, 'regex', 3),
		array('effective_frequency', 'number', '有效次数必须是一个整数！', 2, 'regex', 3),
		array('effective_money', 'number', '储值必须是一个整数！', 2, 'regex', 3),
		array('discount', 'number', '折扣必须是一个整数！', 2, 'regex', 3),
		array('integral', 'number', '积分必须是一个整数！', 2, 'regex', 3),
		array('intro_integral', 'number', '介绍人积分必须是一个整数！', 2, 'regex', 3),
		array('card_type', 'number', '类别必须是一个整数！', 2, 'regex', 3),
		array('status', 'number', '状态必须是一个整数！', 2, 'regex', 3),
		array('member_id', 'number', '会员Id必须是一个整数！', 2, 'regex', 3),
		array('is_show', 'number', '是否显示必须是一个整数！', 2, 'regex', 3),
		array('sort', 'number', '排序必须是一个整数！', 2, 'regex', 3),
		array('alias', '1,96', '对外名称的值最长不能超过 96 个字符！', 2, 'length', 3),
	);
	public function search($pageSize = 20)
	{
		/**************************************** 搜索 ****************************************/
		$where = array();
		if($name = I('get.name'))
			$where['name'] = array('eq', $name);
		if($card_type = I('get.card_type'))
			$where['card_type'] = array('eq', $card_type);

        //对应瑜伽馆
        if(intval(session('admin.company_id')) !==1){
            $where['company_id'] = ['eq',session('admin.company_id')];
        }
		/************************************* 翻页 ****************************************/
		$count = $this->alias('a')->where($where)->count();
		$page = new \Think\Page($count, $pageSize);
		// 配置翻页的样式
		$page->setConfig('prev', '上一页');
		$page->setConfig('next', '下一页');
		$data['page'] = $page->show();
		/************************************** 取数据 ******************************************/
		$data['data'] = $this->alias('a')->where($where)->group('a.id')->limit($page->firstRow.','.$page->listRows)->select();
		return $data;
	}
	// 添加前
	protected function _before_insert(&$data, $option)
	{
        $data['company_id'] = session('admin.company_id');
	}
	// 修改前
	protected function _before_update(&$data, $option)
	{
	}
	// 删除前
	protected function _before_delete($option)
	{
		if(is_array($option['where']['id']))
		{
			$this->error = '不支持批量删除';
			return FALSE;
		}
	}
	/************************************ 其他方法 ********************************************/
}